package com.zmn.mcc.services.interfaces.role;

import com.zmn.mcc.model.entity.role.McRolePermit;

import java.util.List;

/**
 * @author heguanghua
 * @since 2020/04/14 14:28
 */
public interface RolePermitService {

    McRolePermit findByKey(Integer roleId, Integer permitId);
    McRolePermit findByKey(McRolePermit rolePermit);

    List<Integer> listPermitIdByRoleId(Integer roleId);
    List<Integer> listPermitIdByRoleIds(List<Integer> roleIds);
    List<Integer> listPermitIdByStaffId(Integer staffId);

    List<McRolePermit> listPage(Integer startIndex, Integer pageSize);

    Integer countByQuery(McRolePermit rolePermit);


    Integer insert(McRolePermit rolePermit);

    Integer insertByBatch(List<McRolePermit> rolePermits);


    Integer deleteByKey(Integer roleId, Integer permitId);
    Integer deleteByKey(McRolePermit rolePermit);

    Integer deleteByRoleId(Integer roleId);
    Integer deleteByPermitId(Integer permitId);
    Integer deleteByQuery(McRolePermit rolePermit);
}
